package com.ruoyi.business.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 员工信息对象 t_employee_info
 * 
 * @author ruoyi
 * @date 2024-11-17
 */
public class EmployeeInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** 人员编号 */
    @Excel(name = "人员编号")
    private String employeeId;

    /** 姓名 */
    @Excel(name = "姓名")
    private String name;

    /** 单位名称 */
    @Excel(name = "单位名称")
    private String companyName;

    /** 部门名称 */
    @Excel(name = "部门名称")
    private String departmentName;

    /** 部门类别 */
    @Excel(name = "部门类别")
    private String departmentType;

    /** 班组/处室 */
    @Excel(name = "班组/处室")
    private String teamOffice;

    /** 岗位名称 */
    @Excel(name = "岗位名称")
    private String positionName;

    /** 岗位大类 */
    @Excel(name = "岗位大类")
    private String positionCategoryMajor;

    /** 岗位中类 */
    @Excel(name = "岗位中类")
    private String positionCategoryMinor;

    /** 性别 男 女 */
    @Excel(name = "性别 男 女")
    private String gender;

    /** 民族 */
    @Excel(name = "民族")
    private String ethnicity;

    /** 出生日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date birthDate;

    /** 年龄 */
    @Excel(name = "年龄")
    private Long age;

    /** 参加工作时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "参加工作时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date workStartDate;

    /** 工龄起算日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "工龄起算日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date workTenureStartDate;

    /** 进入电力行业时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "进入电力行业时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date entryPowerIndustryDate;

    /** 进入本单位时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "进入本单位时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date entryCompanyDate;

    /** 最高学历毕业时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最高学历毕业时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date highestEducationGraduationDate;

    /** 最高学历学校名称 */
    @Excel(name = "最高学历学校名称")
    private String highestEducationSchoolName;

    /** 最高学历所学专业名称 */
    @Excel(name = "最高学历所学专业名称")
    private String highestEducationMajor;

    /** 最高学历学习形式 全日制, 函授, 在职, 自学考试, 网络教育, 成人教育 */
    @Excel(name = "最高学历学习形式 全日制, 函授, 在职, 自学考试, 网络教育, 成人教育")
    private String highestEducationForm;

    /** 最高学历 */
    @Excel(name = "最高学历")
    private String highestEducationDegree;

    /** 最高学位 */
    @Excel(name = "最高学位")
    private String highestEducationTitle;

    /** 就业学历毕业时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "就业学历毕业时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date employmentEducationGraduationDate;

    /** 就业学历学校名称 */
    @Excel(name = "就业学历学校名称")
    private String employmentEducationSchoolName;

    /** 就业学历所学专业名称 */
    @Excel(name = "就业学历所学专业名称")
    private String employmentEducationMajor;

    /** 就业学历学习形式 */
    @Excel(name = "就业学历学习形式")
    private String employmentEducationForm;

    /** 就业学历 */
    @Excel(name = "就业学历")
    private String employmentEducationDegree;

    /** 就业学位 */
    @Excel(name = "就业学位")
    private String employmentEducationTitle;

    /** 政治面貌 */
    @Excel(name = "政治面貌")
    private String politicalAffiliation;

    /** 入组织时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入组织时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date partyEntryDate;

    /** 转正时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "转正时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date probationEndDate;

    /** 专家等级 */
    @Excel(name = "专家等级")
    private String expertLevel;

    /** 专家类别 */
    @Excel(name = "专家类别")
    private String expertCategory;

    /** 专业技术资格名称 */
    @Excel(name = "专业技术资格名称")
    private String professionalQualificationName;

    /** 专业技术资格系列 */
    @Excel(name = "专业技术资格系列")
    private String professionalQualificationSeries;

    /** 专业技术资格等级 */
    @Excel(name = "专业技术资格等级")
    private String professionalQualificationLevel;

    /** 取得资格时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "取得资格时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date qualificationObtainDate;

    /** 技能鉴定工种 */
    @Excel(name = "技能鉴定工种")
    private String skillIdentificationTrade;

    /** 技能等级 */
    @Excel(name = "技能等级")
    private String skillLevel;

    /** 资格获得时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "资格获得时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date skillQualificationObtainDate;

    /** 任职时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "任职时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date appointmentDate;

    /** 现职务名称 */
    @Excel(name = "现职务名称")
    private String currentPositionName;

    /** 专家称号批准时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "专家称号批准时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expertTitleApprovalDate;

    /** 专家称号终止时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "专家称号终止时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expertTitleTerminationDate;

    /** 专家人才类型 */
    @Excel(name = "专家人才类型")
    private String expertTalentType;

    /** 员工照片地址 */
    @Excel(name = "员工照片地址")
    private String photoUrl;

    /** 备注 */
    @Excel(name = "备注")
    private String remarks;

    /** 年度 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "年度", width = 30, dateFormat = "yyyy-MM-dd")
    private Date awardYear;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }
    public void setAwardYear(Date awardYear) 
    {
        this.awardYear = awardYear;
    }

    public Date getAwardYear() 
    {
        return awardYear;
    }
    public void setEmployeeId(String employeeId) 
    {
        this.employeeId = employeeId;
    }

    public String getEmployeeId() 
    {
        return employeeId;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setCompanyName(String companyName) 
    {
        this.companyName = companyName;
    }

    public String getCompanyName() 
    {
        return companyName;
    }
    public void setDepartmentName(String departmentName) 
    {
        this.departmentName = departmentName;
    }

    public String getDepartmentName() 
    {
        return departmentName;
    }
    public void setDepartmentType(String departmentType) 
    {
        this.departmentType = departmentType;
    }

    public String getDepartmentType() 
    {
        return departmentType;
    }
    public void setTeamOffice(String teamOffice) 
    {
        this.teamOffice = teamOffice;
    }

    public String getTeamOffice() 
    {
        return teamOffice;
    }
    public void setPositionName(String positionName) 
    {
        this.positionName = positionName;
    }

    public String getPositionName() 
    {
        return positionName;
    }
    public void setPositionCategoryMajor(String positionCategoryMajor) 
    {
        this.positionCategoryMajor = positionCategoryMajor;
    }

    public String getPositionCategoryMajor() 
    {
        return positionCategoryMajor;
    }
    public void setPositionCategoryMinor(String positionCategoryMinor) 
    {
        this.positionCategoryMinor = positionCategoryMinor;
    }

    public String getPositionCategoryMinor() 
    {
        return positionCategoryMinor;
    }
    public void setGender(String gender) 
    {
        this.gender = gender;
    }

    public String getGender() 
    {
        return gender;
    }
    public void setEthnicity(String ethnicity) 
    {
        this.ethnicity = ethnicity;
    }

    public String getEthnicity() 
    {
        return ethnicity;
    }
    public void setBirthDate(Date birthDate) 
    {
        this.birthDate = birthDate;
    }

    public Date getBirthDate() 
    {
        return birthDate;
    }
    public void setAge(Long age) 
    {
        this.age = age;
    }

    public Long getAge() 
    {
        return age;
    }
    public void setWorkStartDate(Date workStartDate) 
    {
        this.workStartDate = workStartDate;
    }

    public Date getWorkStartDate() 
    {
        return workStartDate;
    }
    public void setWorkTenureStartDate(Date workTenureStartDate) 
    {
        this.workTenureStartDate = workTenureStartDate;
    }

    public Date getWorkTenureStartDate() 
    {
        return workTenureStartDate;
    }
    public void setEntryPowerIndustryDate(Date entryPowerIndustryDate) 
    {
        this.entryPowerIndustryDate = entryPowerIndustryDate;
    }

    public Date getEntryPowerIndustryDate() 
    {
        return entryPowerIndustryDate;
    }
    public void setEntryCompanyDate(Date entryCompanyDate) 
    {
        this.entryCompanyDate = entryCompanyDate;
    }

    public Date getEntryCompanyDate() 
    {
        return entryCompanyDate;
    }
    public void setHighestEducationGraduationDate(Date highestEducationGraduationDate) 
    {
        this.highestEducationGraduationDate = highestEducationGraduationDate;
    }

    public Date getHighestEducationGraduationDate() 
    {
        return highestEducationGraduationDate;
    }
    public void setHighestEducationSchoolName(String highestEducationSchoolName) 
    {
        this.highestEducationSchoolName = highestEducationSchoolName;
    }

    public String getHighestEducationSchoolName() 
    {
        return highestEducationSchoolName;
    }
    public void setHighestEducationMajor(String highestEducationMajor) 
    {
        this.highestEducationMajor = highestEducationMajor;
    }

    public String getHighestEducationMajor() 
    {
        return highestEducationMajor;
    }
    public void setHighestEducationForm(String highestEducationForm) 
    {
        this.highestEducationForm = highestEducationForm;
    }

    public String getHighestEducationForm() 
    {
        return highestEducationForm;
    }
    public void setHighestEducationDegree(String highestEducationDegree) 
    {
        this.highestEducationDegree = highestEducationDegree;
    }

    public String getHighestEducationDegree() 
    {
        return highestEducationDegree;
    }
    public void setHighestEducationTitle(String highestEducationTitle) 
    {
        this.highestEducationTitle = highestEducationTitle;
    }

    public String getHighestEducationTitle() 
    {
        return highestEducationTitle;
    }
    public void setEmploymentEducationGraduationDate(Date employmentEducationGraduationDate) 
    {
        this.employmentEducationGraduationDate = employmentEducationGraduationDate;
    }

    public Date getEmploymentEducationGraduationDate() 
    {
        return employmentEducationGraduationDate;
    }
    public void setEmploymentEducationSchoolName(String employmentEducationSchoolName) 
    {
        this.employmentEducationSchoolName = employmentEducationSchoolName;
    }

    public String getEmploymentEducationSchoolName() 
    {
        return employmentEducationSchoolName;
    }
    public void setEmploymentEducationMajor(String employmentEducationMajor) 
    {
        this.employmentEducationMajor = employmentEducationMajor;
    }

    public String getEmploymentEducationMajor() 
    {
        return employmentEducationMajor;
    }
    public void setEmploymentEducationForm(String employmentEducationForm) 
    {
        this.employmentEducationForm = employmentEducationForm;
    }

    public String getEmploymentEducationForm() 
    {
        return employmentEducationForm;
    }
    public void setEmploymentEducationDegree(String employmentEducationDegree) 
    {
        this.employmentEducationDegree = employmentEducationDegree;
    }

    public String getEmploymentEducationDegree() 
    {
        return employmentEducationDegree;
    }
    public void setEmploymentEducationTitle(String employmentEducationTitle) 
    {
        this.employmentEducationTitle = employmentEducationTitle;
    }

    public String getEmploymentEducationTitle() 
    {
        return employmentEducationTitle;
    }
    public void setPoliticalAffiliation(String politicalAffiliation) 
    {
        this.politicalAffiliation = politicalAffiliation;
    }

    public String getPoliticalAffiliation() 
    {
        return politicalAffiliation;
    }
    public void setPartyEntryDate(Date partyEntryDate) 
    {
        this.partyEntryDate = partyEntryDate;
    }

    public Date getPartyEntryDate() 
    {
        return partyEntryDate;
    }
    public void setProbationEndDate(Date probationEndDate) 
    {
        this.probationEndDate = probationEndDate;
    }

    public Date getProbationEndDate() 
    {
        return probationEndDate;
    }
    public void setExpertLevel(String expertLevel) 
    {
        this.expertLevel = expertLevel;
    }

    public String getExpertLevel() 
    {
        return expertLevel;
    }
    public void setExpertCategory(String expertCategory) 
    {
        this.expertCategory = expertCategory;
    }

    public String getExpertCategory() 
    {
        return expertCategory;
    }
    public void setProfessionalQualificationName(String professionalQualificationName) 
    {
        this.professionalQualificationName = professionalQualificationName;
    }

    public String getProfessionalQualificationName() 
    {
        return professionalQualificationName;
    }
    public void setProfessionalQualificationSeries(String professionalQualificationSeries) 
    {
        this.professionalQualificationSeries = professionalQualificationSeries;
    }

    public String getProfessionalQualificationSeries() 
    {
        return professionalQualificationSeries;
    }
    public void setProfessionalQualificationLevel(String professionalQualificationLevel) 
    {
        this.professionalQualificationLevel = professionalQualificationLevel;
    }

    public String getProfessionalQualificationLevel() 
    {
        return professionalQualificationLevel;
    }
    public void setQualificationObtainDate(Date qualificationObtainDate) 
    {
        this.qualificationObtainDate = qualificationObtainDate;
    }

    public Date getQualificationObtainDate() 
    {
        return qualificationObtainDate;
    }
    public void setSkillIdentificationTrade(String skillIdentificationTrade) 
    {
        this.skillIdentificationTrade = skillIdentificationTrade;
    }

    public String getSkillIdentificationTrade() 
    {
        return skillIdentificationTrade;
    }
    public void setSkillLevel(String skillLevel) 
    {
        this.skillLevel = skillLevel;
    }

    public String getSkillLevel() 
    {
        return skillLevel;
    }
    public void setSkillQualificationObtainDate(Date skillQualificationObtainDate) 
    {
        this.skillQualificationObtainDate = skillQualificationObtainDate;
    }

    public Date getSkillQualificationObtainDate() 
    {
        return skillQualificationObtainDate;
    }
    public void setAppointmentDate(Date appointmentDate) 
    {
        this.appointmentDate = appointmentDate;
    }

    public Date getAppointmentDate() 
    {
        return appointmentDate;
    }
    public void setCurrentPositionName(String currentPositionName) 
    {
        this.currentPositionName = currentPositionName;
    }

    public String getCurrentPositionName() 
    {
        return currentPositionName;
    }
    public void setExpertTitleApprovalDate(Date expertTitleApprovalDate) 
    {
        this.expertTitleApprovalDate = expertTitleApprovalDate;
    }

    public Date getExpertTitleApprovalDate() 
    {
        return expertTitleApprovalDate;
    }
    public void setExpertTitleTerminationDate(Date expertTitleTerminationDate) 
    {
        this.expertTitleTerminationDate = expertTitleTerminationDate;
    }

    public Date getExpertTitleTerminationDate() 
    {
        return expertTitleTerminationDate;
    }
    public void setExpertTalentType(String expertTalentType) 
    {
        this.expertTalentType = expertTalentType;
    }

    public String getExpertTalentType() 
    {
        return expertTalentType;
    }
    public void setPhotoUrl(String photoUrl) 
    {
        this.photoUrl = photoUrl;
    }

    public String getPhotoUrl() 
    {
        return photoUrl;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("remarks", getRemarks())
            .append("awardYear", getAwardYear())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("employeeId", getEmployeeId())
            .append("name", getName())
            .append("companyName", getCompanyName())
            .append("departmentName", getDepartmentName())
            .append("departmentType", getDepartmentType())
            .append("teamOffice", getTeamOffice())
            .append("positionName", getPositionName())
            .append("positionCategoryMajor", getPositionCategoryMajor())
            .append("positionCategoryMinor", getPositionCategoryMinor())
            .append("gender", getGender())
            .append("ethnicity", getEthnicity())
            .append("birthDate", getBirthDate())
            .append("age", getAge())
            .append("workStartDate", getWorkStartDate())
            .append("workTenureStartDate", getWorkTenureStartDate())
            .append("entryPowerIndustryDate", getEntryPowerIndustryDate())
            .append("entryCompanyDate", getEntryCompanyDate())
            .append("highestEducationGraduationDate", getHighestEducationGraduationDate())
            .append("highestEducationSchoolName", getHighestEducationSchoolName())
            .append("highestEducationMajor", getHighestEducationMajor())
            .append("highestEducationForm", getHighestEducationForm())
            .append("highestEducationDegree", getHighestEducationDegree())
            .append("highestEducationTitle", getHighestEducationTitle())
            .append("employmentEducationGraduationDate", getEmploymentEducationGraduationDate())
            .append("employmentEducationSchoolName", getEmploymentEducationSchoolName())
            .append("employmentEducationMajor", getEmploymentEducationMajor())
            .append("employmentEducationForm", getEmploymentEducationForm())
            .append("employmentEducationDegree", getEmploymentEducationDegree())
            .append("employmentEducationTitle", getEmploymentEducationTitle())
            .append("politicalAffiliation", getPoliticalAffiliation())
            .append("partyEntryDate", getPartyEntryDate())
            .append("probationEndDate", getProbationEndDate())
            .append("expertLevel", getExpertLevel())
            .append("expertCategory", getExpertCategory())
            .append("professionalQualificationName", getProfessionalQualificationName())
            .append("professionalQualificationSeries", getProfessionalQualificationSeries())
            .append("professionalQualificationLevel", getProfessionalQualificationLevel())
            .append("qualificationObtainDate", getQualificationObtainDate())
            .append("skillIdentificationTrade", getSkillIdentificationTrade())
            .append("skillLevel", getSkillLevel())
            .append("skillQualificationObtainDate", getSkillQualificationObtainDate())
            .append("appointmentDate", getAppointmentDate())
            .append("currentPositionName", getCurrentPositionName())
            .append("expertTitleApprovalDate", getExpertTitleApprovalDate())
            .append("expertTitleTerminationDate", getExpertTitleTerminationDate())
            .append("expertTalentType", getExpertTalentType())
            .append("photoUrl", getPhotoUrl())
            .toString();
    }
}
